import sys
import os

# 添加项目根目录到Python路径
sys.path.insert(0, os.path.join(os.path.dirname(__file__), '..'))

from video_processors.cut_processor import cut_processor


def main():
    """
    cut_processor使用示例
    
    本示例展示了如何使用cut_processor函数根据时间数组剪切视频。
    支持本地文件路径和网络URL，函数会自动下载网络视频进行处理。
    """
    # 示例视频URL（请替换为实际可用的视频URL）
    video_url = "https://example.com/sample_video.mp4"
    
    # 定义剪切时间数组
    cut_time = [
        {"start_time": 0, "end_time": 10},
        {"start_time": 15, "end_time": 25},
        {"start_time": 30, "end_time": 40}
    ]
    
    print("=== cut_processor使用示例 ===")
    print(f"视频URL: {video_url}")
    print(f"剪切时间数组: {cut_time}")
    
    try:
        # 调用cut_processor处理视频
        result = cut_processor(
            video_url=video_url,
            cut_time=cut_time,
            task_id="example_task_001"
        )
        
        print("\n处理结果:")
        for i, item in enumerate(result):
            print(f"  剪切段 {i+1}:")
            print(f"    开始时间: {item['start_time']}s")
            print(f"    结束时间: {item['end_time']}s")
            print(f"    上传URL: {item['url']}")
            if 'error' in item:
                print(f"    错误信息: {item['error']}")
        
        print("\ncut_processor处理完成!")
        
    except Exception as e:
        print(f"处理失败: {e}")


if __name__ == "__main__":
    main()